SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO
CREATE PROC [dbo].[SP_TXMVTO_CNTB_Q27]
/*-------------------------------------------------------------------*/  
/*----- Empresa           : OFISIS S.A.                          ----*/  
/*----- Cliente           : OFISIS S.A.                          ----*/  
/*----- Sistema           : Contabilidad                         ----*/  
/*----- Modulo            : Empresa                              ----*/  
/*----- Programa          : Registro de Ventas para el PDT       ----*/  
/*----- Nombre            : SP_TXMVTO_CNTB_Q27                   ----*/  
/*----- Script            : TXMVTO_CNTB                          ----*/  
/*----- Desarrollado por  : Martin Garcia Farfan                 ----*/  
/*----- Fecha             : 23/03/2001                           ----*/  
/*----- Base de Datos     : MS SQL Server                        ----*/  
/*----- Version BD        : 7.0                                  ----*/  
/*-------------------------------------------------------------------*/  
/*-------------------------------------------------------------------*/  
/*----- MODIFICADO 1     : PDGV                                  ----*/
/*----- FECHA MODIF      : 10/05/2004                            ----*/   
/*----- DETALLE MODIF    : SE QUITO JOIN CON ESTATUS 'ACT'       ----*/
/*-------------------------------------------------------------------*/  

/*----- MODIFICADO 2     : PDGV                                  ----*/
/*----- FECHA MODIF      : 20/02/2009                            ----*/   
/*----- DETALLE MODIF    : SE QUITO EL HARDCODE DE TIPO_AUXILIAR CLIENTE     ----*/
/*-------------------------------------------------------------------*/
/*-------------------------------------------------------------------*/  
/*----- Drop proc SP_TXMVTO_CNTB_Q27                             ----*/  
/*----- Grant all on SP_TXMVTO_CNTB_Q27 to PUBLIC                ----*/  
/*----- 

SP_TXMVTO_CNTB_Q27  '01',1,2008

                                     ----*/  
/*-------------------------------------------------------------------*/  
@ISCO_EMPR   TD_VC_002,  
@INNU_CNTB_EMPR  TD_IN_001_CONT,  
@INNU_ANNO   TD_IN_004_ANNO  
  
As  
  
Declare   
 @VDFE_DOCU     TD_DT_001,  
 @VSNS_ASTO_BASE    Varchar(20),  
 @VSTI_MONE_BASE    TD_VC_003,  
 @VSTI_MONE_BAS1    TD_VC_003,  
 @VSTI_DOCU     TD_VC_003,  
 @VSNU_DOCU     TD_VC_020,  
 @VSCO_UNID     TD_VC_003,  
 @VSCO_OPRC     TD_VC_003,  
 @VSNS_ASTO     TD_VC_010,  
 @VSCO_CLNT     TD_VC_020,  
 @VSNO_CORT_CLNT    TD_VC_100,  
 @VSNU_RUCS_CLNT    TD_VC_020,  
 @VSTI_MONE     TD_VC_003,  
 @VSCO_OPR1     TD_VC_003,  
 @VSCO_OPR2     TD_VC_003,  
 @VSID_VENT      TD_VC_003,  
 @VSID_IIGV      TD_VC_003,  
 @VSID_FONA      TD_VC_003,  
 @VSID_RENT      TD_VC_003,  
 @VSCO_SUNA        TD_VC_002,   
 @VNIM_TOTA_BASX    TD_NU_016_004,  
 @VNIM_TOTA_BASY    TD_NU_016_004,  
 @VNIM_INAF_ORIX    TD_NU_016_004,  
 @VNIM_AFEC_ORIX    TD_NU_016_004,  
 @VNIM_IIGV_ORIX    TD_NU_016_004,    
 @VNIM_TOTA_ORIX    TD_NU_016_004,  
 @VNIM_INAF_SOLX    TD_NU_016_004,  
 @VNIM_AFEC_SOLX    TD_NU_016_004,  
 @VNIM_IIGV_SOLX    TD_NU_016_004,  
 @VNIM_TOTA_SOLX    TD_NU_016_004,  
 @VNFA_CAMB     TD_NU_009_004,  
 @VNIM_IIGV_ORIG    TD_NU_016_004,  
 @VNIM_TOTA_ORIG    TD_NU_016_004,  
 @VNIM_IIGV_SOLE    TD_NU_016_004,  
 @VNIM_TOTA_SOLE    TD_NU_016_004,  
 @VNPO_IGV1     TD_NU_009_004,  
 @VNPO_IGV2     TD_NU_009_004,  
 @VNPO_REN1     TD_NU_009_004,  
 @VNPO_REN2     TD_NU_009_004,  
 @CDFE_DOCU     TD_DT_001,  
 @CSTI_DOCU     TD_VC_003,  
 @CSNU_DOCU     TD_VC_020,  
 @CSCO_UNID     TD_VC_003,  
 @CSCO_OPRC     TD_VC_003,  
 @CSNS_ASTO     TD_VC_010,  
 @CSCO_AUXI     TD_VC_020,  
 @CSCN_CNTB_EMPR    TD_VC_020,  
 @CSTI_OPER     TD_VC_003,  
 @CSTI_MONE     TD_VC_003,  
 @CNFA_CAMB     TD_NU_009_004,  
 @CNIM_MVTO_ORIG    TD_NU_016_004,  
 @CNIM_MVTO_CNTB    TD_NU_016_004,  
 @CSID_CNTA      TD_VC_003,  
 @CNPO_IMPT_REN1   TD_NU_015_006,  
 @CNPO_IMPT_REN2   TD_NU_015_006,   
 @CNPO_IMPT_VEN1   TD_NU_015_006,  
 @CNPO_IMPT_VEN2   TD_NU_015_006, 
 @VSCO_DOCU_SUNA   TD_VC_003,  
 @VSNU_DOCU_SUNA   TD_VC_020,  
 @VSAP_PATE_AUXI   TD_VC_020,
 @VSAP_MATE_AUXI   TD_VC_020,
 @VSNO_NATU_AUX1   TD_VC_020,
 @VSNO_NATU_AUX2   TD_VC_020,
 @VSNO_RAZO_SOCI   Varchar(100),
 @VSTI_PERS_SUNA   Varchar(3), 
 @VSID_0003        Varchar(3), 
 @CSTI_AUXI_EMPR TD_VC_001
---- TMAUXI_eMPR
   
 Select @VNIM_IIGV_ORIG = 0.00  
 Select @VNIM_TOTA_ORIG = 0.00  
 Select @VDFE_DOCU      = Null  
 Select @VSTI_DOCU      = Null  
 Select @VSNS_ASTO      = Null  
 Select @VSCO_CLNT      = Null  
 Select @VSNO_CORT_CLNT = Null  
 Select @VSNU_RUCS_CLNT = Null  
 Select @VSTI_MONE      = Null  
 Select @VNIM_AFEC_ORIX = 0.00  
 Select @VNIM_INAF_ORIX = 0.00  
 Select @VNIM_IIGV_ORIX = 0.00  
 Select @VNIM_TOTA_ORIX = 0.00  
 Select @VNIM_AFEC_SOLX = 0.00  
 Select @VNIM_INAF_SOLX = 0.00  
 Select @VNIM_IIGV_SOLX = 0.00  
 Select @VNIM_TOTA_ORIX = 0.00  
 Select @VNFA_CAMB      = 0.00  

   Select @VSCO_DOCU_SUNA = Null  
   Select @VSNU_DOCU_SUNA = Null  
   Select @VSAP_PATE_AUXI = Null  
   Select @VSAP_MATE_AUXI = Null  
   Select @VSNO_NATU_AUX1 = Null  
   Select @VSNO_NATU_AUX2 = Null  
   Select @VSNO_RAZO_SOCI = Null  
   Select @VSTI_PERS_SUNA = Null  

Delete From TWMVTO_Q027

Select @VSID_0003 = ''
  
Select @VSTI_MONE_BAS1 = CO_MONE,   
       @VSID_VENT = ID_VENT,   
       @VSID_IIGV = ID_IMPT_VENT,   
       @VSID_FONA = ID_FONA,  
       @VSID_RENT = ID_IMPT_RENT, 
       @VSID_0003 = IsNull(ID_0003 ,'') -- ID DE EXPORTACIONES
  From TTCNTB_EMPR  
  Where CO_EMPR = @ISCO_EMPR   
  and NU_CNTB_EMPR = @INNU_CNTB_EMPR  


--SELECT * FROM TTCNTB_EMPR 

Declare CU_TXMVTO_CNTB_Q27_1 Cursor  
For  
Select t1.FE_DOCU, t1.TI_DOCU, t1.NU_DOCU, t1.CO_UNID_CNTB, t1.CO_OPRC_CNTB,   
 t1.NU_ASTO, t1.CO_AUXI_EMPR, t1.CO_CNTA_EMPR, t1.TI_OPER, t1.CO_MONE,   
 t1.FA_CAMB, t1.IM_MVTO_ORIG, t1.IM_MVTO_CNTB, t2.ID_CNTA, t4.PO_IMPT_REN1, 
 t4.PO_IMPT_REN2, t4.PO_IMPT_VEN1, t4.PO_IMPT_VEN2, t1.TI_AUXI_EMPR
From  TXMVTO_CNTB t1
  Left Outer Join TTPORC_IMPT t4 
  On t1.CO_EMPR = t4.CO_EMPR   
    And t1.NU_ANNO = t4.NU_ANNO  
    And t1.NU_MESE = t4.NU_MESE, 
  TTIDEN_CNTA t2, TMOPRC_CNTB t3, TMPLAN_EMPR t5  
Where   t1.CO_EMPR = @ISCO_EMPR   
    And t1.NU_CNTB_EMPR = @INNU_CNTB_EMPR  
    And t1.CO_OPRC_CNTB in (Select CO_OPRC_CNTB From TTIDEN_OPER   
              Where CO_EMPR = @ISCO_EMPR And ID_OPRC = @VSID_VENT   
              And NU_CNTB_EMPR = @INNU_CNTB_EMPR)   
    And t1.NU_ANNO = @INNU_ANNO   
    And t1.CO_CNTA_EMPR in (Select CO_CNTA_EMPR From TTIDEN_CNTA   
              Where CO_EMPR = @ISCO_EMPR And ID_CNTA = @VSID_VENT or ID_CNTA = @VSID_IIGV   
              And NU_CNTB_EMPR = @INNU_CNTB_EMPR)  
    And t1.CO_CNTA_EMPR Not In (Select CO_CNTA_EMPR From TTIDEN_CNTA   
              Where CO_EMPR = @ISCO_EMPR And NU_ANNO = 9999  
              And NU_CNTB_EMPR = @INNU_CNTB_EMPR
              And ID_CNTA = @VSID_0003 )  --- VALIDA QUE NO CARGUE LAS EXPORTACIONES
    And t1.SI_MVTO_CNTB = 'APR'  
    And t2.CO_EMPR  = t1.CO_EMPR  
    And t2.CO_CNTA_EMPR = t1.CO_CNTA_EMPR  
    And t2.NU_CNTB_EMPR = t1.NU_CNTB_EMPR  
    And t1.CO_EMPR = t3.CO_EMPR  
    And t1.CO_OPRC_CNTB = t3.CO_OPRC_CNTB  
    And t1.CO_EMPR = t5.CO_EMPR  
    And t5.NU_ANNO = 9999  
    And t1.CO_CNTA_EMPR = t5.CO_CNTA_EMPR  
Order By t1.CO_UNID_CNTB, t1.CO_OPRC_CNTB, t1.NU_MESE, t1.NU_ASTO, t1.CO_CNTA_EMPR,  
  t1.TI_AUXI_EMPR, t1.CO_AUXI_EMPR  
  
Open CU_TXMVTO_CNTB_Q27_1  
Fetch CU_TXMVTO_CNTB_Q27_1 Into @CDFE_DOCU, @CSTI_DOCU,  @CSNU_DOCU, @CSCO_UNID, @CSCO_OPRC,   
 @CSNS_ASTO, @CSCO_AUXI,@CSCN_CNTB_EMPR, @CSTI_OPER, @CSTI_MONE, @CNFA_CAMB,    
 @CNIM_MVTO_ORIG,@CNIM_MVTO_CNTB,@CSID_CNTA, @CNPO_IMPT_REN1, @CNPO_IMPT_REN2, @CNPO_IMPT_VEN1, @CNPO_IMPT_VEN2,  
@CSTI_AUXI_EMPR
Select @VSNS_ASTO_BASE = Null  
Select @VSTI_MONE_BASE = Null  
  
While @@Fetch_status = 0  
 Begin  
  If @VSNS_ASTO_BASE != Rtrim(@CSCO_UNID) + Rtrim(@CSCO_OPRC) + Rtrim(@CSNS_ASTO) And   
   @VSTI_MONE_BASE IS NOT Null  
   Begin  
     Select @VNIM_TOTA_BASX = Round(@VNIM_TOTA_ORIG - @VNIM_IIGV_ORIG,2)  
     Select @VNIM_TOTA_BASY = Round(@VNIM_IIGV_ORIG / ((@VNPO_IGV1 + @VNPO_IGV2) / 100),2)  

     If Abs(Round(@VNIM_TOTA_BASX - @VNIM_TOTA_BASY,2)) > 0.50  
        Begin  
   Select @VNIM_AFEC_ORIX = Round(@VNIM_TOTA_BASY,2)  
   Select @VNIM_INAF_ORIX = Round(@VNIM_TOTA_BASX - @VNIM_TOTA_BASY,2)  
 End      
     Else  
 Begin  
   Select @VNIM_AFEC_ORIX = Round(@VNIM_TOTA_BASX,2)  
   Select @VNIM_INAF_ORIX = 0.00  
 End      
     If @VSTI_MONE != @VSTI_MONE_BAS1  
 Begin  
   Select @VNIM_IIGV_ORIX = @VNIM_IIGV_ORIG  
   Select @VNIM_TOTA_ORIX = @VNIM_TOTA_ORIG  
   Select @VNIM_AFEC_SOLX = Round(@VNIM_AFEC_ORIX * @VNFA_CAMB,2)  
   Select @VNIM_INAF_SOLX = Round(@VNIM_INAF_ORIX * @VNFA_CAMB,2)  
   Select @VNIM_IIGV_SOLX = Round(@VNIM_IIGV_ORIG * @VNFA_CAMB,2)  
   Select @VNIM_TOTA_SOLX = Round(@VNIM_TOTA_ORIG * @VNFA_CAMB,2)  
 End  
     Else  
 Begin  
   Select @VNIM_AFEC_SOLX = Round(@VNIM_AFEC_ORIX,2)  
   Select @VNIM_INAF_SOLX = Round(@VNIM_INAF_ORIX,2)  
   Select @VNIM_IIGV_SOLX = Round(@VNIM_IIGV_ORIG,2)  
   Select @VNIM_TOTA_SOLX = Round(@VNIM_TOTA_ORIG,2)  
   Select @VNIM_AFEC_ORIX = Null  
   Select @VNIM_INAF_ORIX = Null  
   Select @VNIM_IIGV_ORIX = Null  
   Select @VNIM_TOTA_ORIX = Null  
   Select @VNFA_CAMB = Null  
        End  
      Select @VSCO_SUNA = CO_SUNA From TTDOCU_CNTB  
      Where TI_DOCU = @VSTI_DOCU  

      Insert Into TWMVTO_Q027 
(FE_DOCU,TI_DOCU_SUNA,TI_DOCU,NU_DOCU,CO_UNID_RGST,CO_OPRC,NU_ASTO,CO_CLNT,NO_CORT_CLNT,NU_RUCS_CLNT,
TI_MONE,IM_INAF_ORIG,IM_AFEC_ORIG,IM_IIGV_ORIG,IM_TOTA_ORIG,IM_INAF_SOLE,IM_AFEC_SOLE,IM_IIGV_SOLE,
IM_TOTA_SOLE,FA_CAMB,IM_IIGV_IISC,CO_DOCU_SUNA,NU_DOCU_SUNA,AP_PATE_AUXI,AP_MATE_AUXI,NO_NATU_AUX1,
NO_NATU_AUX2,NO_RAZO_SOCI,TI_PERS_SUNA)
Values  
      (@VDFE_DOCU, @VSCO_SUNA, @VSTI_DOCU, @VSNU_DOCU, @VSCO_UNID,   
       @VSCO_OPRC, @VSNS_ASTO, @VSCO_CLNT, @VSNO_CORT_CLNT, @VSNU_RUCS_CLNT,   
       @VSTI_MONE, @VNIM_INAF_ORIX, @VNIM_AFEC_ORIX, @VNIM_IIGV_ORIX,   
       @VNIM_TOTA_ORIX, @VNIM_INAF_SOLX, @VNIM_AFEC_SOLX, @VNIM_IIGV_SOLX,    
       @VNIM_TOTA_SOLX, @VNFA_CAMB, 0.00,@VSCO_DOCU_SUNA,@VSNU_DOCU_SUNA,@VSAP_PATE_AUXI,
       @VSAP_MATE_AUXI,@VSNO_NATU_AUX1,@VSNO_NATU_AUX2,@VSNO_RAZO_SOCI,@VSTI_PERS_SUNA)  

 
 Select @VSTI_MONE_BASE = Null  
 Select @VDFE_DOCU      = Null  
 Select @VSTI_DOCU      = Null  
 Select @VSNS_ASTO      = Null  
 Select @VSCO_CLNT      = Null  
 Select @VSNO_CORT_CLNT = Null  
 Select @VSNU_RUCS_CLNT = Null  
 Select @VSTI_MONE      = Null  
 Select @VNIM_IIGV_ORIG = 0.00  
 Select @VNIM_TOTA_ORIG = 0.00  
 Select @VNIM_AFEC_ORIX = 0.00  
 Select @VNIM_INAF_ORIX = 0.00  
 Select @VNIM_IIGV_ORIX = 0.00  
 Select @VNIM_TOTA_ORIX = 0.00  
 Select @VNIM_AFEC_SOLX = 0.00  
 Select @VNIM_INAF_SOLX = 0.00  
 Select @VNIM_IIGV_SOLX = 0.00  
 Select @VNIM_TOTA_ORIX = 0.00  
 Select @VNFA_CAMB = 0.00      
   Select @VSCO_DOCU_SUNA = Null  
   Select @VSNU_DOCU_SUNA = Null  
   Select @VSAP_PATE_AUXI = Null  
   Select @VSAP_MATE_AUXI = Null  
   Select @VSNO_NATU_AUX1 = Null  
   Select @VSNO_NATU_AUX2 = Null  
   Select @VSNO_RAZO_SOCI = Null  
   Select @VSTI_PERS_SUNA = Null  

   End  
 /*-----   Acumula Movimientos - Provisiones        -----*/  
   If @CNPO_IMPT_VEN1 IS Null  
 Select @CNPO_IMPT_VEN1 = 0.00  
   If @CNPO_IMPT_VEN2 IS Null  
  Select @CNPO_IMPT_VEN2 = 0.00  
   If @CNPO_IMPT_REN1 IS Null  
  Select @CNPO_IMPT_REN1 = 0.00  
   If @CNPO_IMPT_REN2 IS Null  
 Select @CNPO_IMPT_REN2 = 0.00  
   Select @VNPO_IGV1 = @CNPO_IMPT_VEN1  
   Select @VNPO_IGV2 = @CNPO_IMPT_VEN2  
   Select @VSNS_ASTO_BASE = Rtrim(@CSCO_UNID) + Rtrim(@CSCO_OPRC) + RTrim(@CSNS_ASTO)  
   If @CSID_CNTA = '002'  
 Begin  
   If @VSTI_MONE_BASE IS Null  
      Begin  
        Select  @VSCO_CLNT = CO_AUXI_EMPR,  
        @VSNO_CORT_CLNT = NO_AUXI,    
        @VSNU_RUCS_CLNT = NU_RUCS, 
        @VSCO_DOCU_SUNA = CO_DOCU_SUNA,  
        @VSNU_DOCU_SUNA = NU_DOCU_SUNA,  
        @VSAP_PATE_AUXI = AP_PATE_AUXI,
        @VSAP_MATE_AUXI = AP_MATE_AUXI,
        @VSNO_NATU_AUX1 = NO_NATU_AUX1,
        @VSNO_NATU_AUX2 = NO_NATU_AUX2,
        @VSNO_RAZO_SOCI = NO_RAZO_SOCI,
        @VSTI_PERS_SUNA = TI_PERS_SUNA
        From TMAUXI_EMPR  
        Where  CO_EMPR = @ISCO_EMPR 
        And TI_AUXI_EMPR = @CSTI_AUXI_EMPR
        And CO_AUXI_EMPR = @CSCO_AUXI  
  If @@rowcount = 0  
     Begin  
   Select @VDFE_DOCU = Null  
   Select @VSTI_DOCU = Null  
   Select @VSNU_DOCU = Null  
   Select @VSCO_CLNT = Null   
   Select @VSNO_CORT_CLNT = Null  
   Select @VSNU_RUCS_CLNT = Null  

   Select @VSCO_DOCU_SUNA = Null  
   Select @VSNU_DOCU_SUNA = Null  
   Select @VSAP_PATE_AUXI = Null  
   Select @VSAP_MATE_AUXI = Null  
   Select @VSNO_NATU_AUX1 = Null  
   Select @VSNO_NATU_AUX2 = Null  
   Select @VSNO_RAZO_SOCI = Null  
   Select @VSTI_PERS_SUNA = Null  
     End  
  Else   
     Begin  
       Select @VDFE_DOCU = @CDFE_DOCU  
       Select @VSTI_DOCU = @CSTI_DOCU  
       Select @VSNU_DOCU = @CSNU_DOCU  
     End  
  Select @VSCO_UNID = @CSCO_UNID   
  Select @VSCO_OPRC = @CSCO_OPRC  
  Select @VSNS_ASTO = @CSNS_ASTO  
  Select @VSTI_MONE = @CSTI_MONE  
  Select @VNFA_CAMB = Round(@CNFA_CAMB,3)  
  Select @VSTI_MONE_BASE = @CSTI_MONE  
      End  
   If @VSTI_MONE_BASE IS NOT Null  
      Begin  
  If @VSTI_MONE_BASE != @CSTI_MONE  
     Begin  
      Select @CNIM_MVTO_ORIG = Round(@CNIM_MVTO_ORIG / @VNFA_CAMB,2)  
      End  
  If @CSTI_OPER = 'CAR'  
     Begin  
       Select @VNIM_TOTA_ORIG = Round(@VNIM_TOTA_ORIG + @CNIM_MVTO_ORIG,2)  
     End  
  Else If @CSTI_OPER = 'ABO'  
     Begin  
       Select @VNIM_TOTA_ORIG = Round(@VNIM_TOTA_ORIG - @CNIM_MVTO_ORIG,2)  
     End  
      End  
  End  
       /*----- Acumula Movimientos - IGV -----*/  
        If @CSID_CNTA = '009'  
    Begin  
      If @VSTI_MONE_BASE IS NOT Null  
  Begin  
    If @VSTI_MONE_BASE != @CSTI_MONE  
       Begin  
   Select @CNIM_MVTO_ORIG = Round(@CNIM_MVTO_ORIG / @VNFA_CAMB,2)  
       End  
    If @CSTI_OPER = 'ABO'  
       Begin  
   Select @VNIM_IIGV_ORIG = Round(@VNIM_IIGV_ORIG + @CNIM_MVTO_ORIG,2)  
       End  
    Else If @CSTI_OPER = 'CAR'  
       Begin  
   Select @VNIM_IIGV_ORIG = Round(@VNIM_IIGV_ORIG - @CNIM_MVTO_ORIG,2)  
       End  
        End  
     End  
  
 Fetch CU_TXMVTO_CNTB_Q27_1 into  
 @CDFE_DOCU, @CSTI_DOCU,  @CSNU_DOCU, @CSCO_UNID, @CSCO_OPRC, @CSNS_ASTO,   
 @CSCO_AUXI,@CSCN_CNTB_EMPR, @CSTI_OPER, @CSTI_MONE, @CNFA_CAMB,    
 @CNIM_MVTO_ORIG,@CNIM_MVTO_CNTB,@CSID_CNTA, @CNPO_IMPT_REN1, @CNPO_IMPT_REN2, @CNPO_IMPT_VEN1, @CNPO_IMPT_VEN2,  
@CSTI_AUXI_EMPR
 End  
 Close CU_TXMVTO_CNTB_Q27_1  
 Deallocate CU_TXMVTO_CNTB_Q27_1  
  
 If  @VSTI_MONE_BASE IS NOT Null   
     Begin  
 Select @VNIM_TOTA_BASX=Round(@VNIM_TOTA_ORIG-@VNIM_IIGV_ORIG,2)  
        Select @VNIM_TOTA_BASY=Round(@VNIM_IIGV_ORIG/((@VNPO_IGV1+@VNPO_IGV2)/100),2)  
        If Abs(Round(@VNIM_TOTA_BASX - @VNIM_TOTA_BASY,2)) > 0.50  
           Begin  
             Select @VNIM_AFEC_ORIX=Round(@VNIM_TOTA_BASY,2)  
             Select @VNIM_INAF_ORIX=Round(@VNIM_TOTA_BASX - @VNIM_TOTA_BASY,2)  
           End      
        Else  
          Begin  
             Select @VNIM_AFEC_ORIX = Round(@VNIM_TOTA_BASX,2)  
  Select @VNIM_INAF_ORIX = 0.00  
           End  
        If @VSTI_MONE != @VSTI_MONE_BAS1  
           Begin  
             Select @VNIM_IIGV_ORIX = @VNIM_IIGV_ORIG  
             Select @VNIM_TOTA_ORIX = @VNIM_TOTA_ORIG  
             Select @VNIM_AFEC_SOLX = Round(@VNIM_AFEC_ORIX * @VNFA_CAMB,2)  
             Select @VNIM_INAF_SOLX = Round(@VNIM_INAF_ORIX * @VNFA_CAMB,2)  
             Select @VNIM_IIGV_SOLX = Round(@VNIM_IIGV_ORIG * @VNFA_CAMB,2)  
             Select @VNIM_TOTA_SOLX = Round(@VNIM_TOTA_ORIG * @VNFA_CAMB,2)  
           End  
   Else  
    Begin  
      Select @VNIM_AFEC_SOLX = Round(@VNIM_AFEC_ORIX,2)  
      Select @VNIM_INAF_SOLX = Round(@VNIM_INAF_ORIX,2)  
      Select @VNIM_IIGV_SOLX = Round(@VNIM_IIGV_ORIG,2)  
      Select @VNIM_TOTA_SOLX = Round(@VNIM_TOTA_ORIG,2)  
      Select @VNIM_AFEC_ORIX = Null  
      Select @VNIM_INAF_ORIX = Null  
      Select @VNIM_IIGV_ORIX = Null  
      Select @VNIM_TOTA_ORIX = Null  
      Select @VNFA_CAMB = Null  
    End  
  Select @VSCO_SUNA = CO_SUNA From TTDOCU_CNTB Where TI_DOCU = @VSTI_DOCU  
  
 Insert Into TWMVTO_Q027
(FE_DOCU,TI_DOCU_SUNA,TI_DOCU,NU_DOCU,CO_UNID_RGST,CO_OPRC,NU_ASTO,CO_CLNT,NO_CORT_CLNT,NU_RUCS_CLNT,
TI_MONE,IM_INAF_ORIG,IM_AFEC_ORIG,IM_IIGV_ORIG,IM_TOTA_ORIG,IM_INAF_SOLE,IM_AFEC_SOLE,IM_IIGV_SOLE,
IM_TOTA_SOLE,FA_CAMB,IM_IIGV_IISC,CO_DOCU_SUNA,NU_DOCU_SUNA,AP_PATE_AUXI,AP_MATE_AUXI,NO_NATU_AUX1,
NO_NATU_AUX2,NO_RAZO_SOCI,TI_PERS_SUNA)
 Values(@VDFE_DOCU, @VSCO_SUNA, @VSTI_DOCU, @VSNU_DOCU,   
 @VSCO_UNID, @VSCO_OPRC,@VSNS_ASTO, @VSCO_CLNT, @VSNO_CORT_CLNT,   
 @VSNU_RUCS_CLNT, @VSTI_MONE,@VNIM_INAF_ORIX, @VNIM_AFEC_ORIX,   
 @VNIM_IIGV_ORIX, @VNIM_TOTA_ORIX, @VNIM_INAF_SOLX, @VNIM_AFEC_SOLX,   
 @VNIM_IIGV_SOLX, @VNIM_TOTA_SOLX, @VNFA_CAMB, 0.00,@VSCO_DOCU_SUNA,@VSNU_DOCU_SUNA,@VSAP_PATE_AUXI,
 @VSAP_MATE_AUXI,@VSNO_NATU_AUX1,@VSNO_NATU_AUX2,@VSNO_RAZO_SOCI,@VSTI_PERS_SUNA)  
End  
  
Return  
/*--------------------------------- Fin ------------------------------------*/  







GO
